package com.ruoyi.game.core;

import lombok.extern.slf4j.Slf4j;

/**
 * 玩家操作类型（可用于回合控制、操作判定、托管行为等）
 */
@Slf4j
public enum PKOpType {
    NONE,           // 空操作
    OUT_CARD,       // 出牌
    FOLLOW,         // 跟牌
    LIANG_ZHU1,     // 亮主一张
    LIANG_ZHU2,     // 亮主两张
    FAN_ZHU,        // 反主
    ZI_BAO,         // 自保
    ZI_FAN,         // 自反
    KOU_DI,         // 扣底牌
    DA_DU,          // 打独
    HAN_DA          // 喊打
    ;

    public boolean isLiangZhuOp() {
        boolean result = switch (this) {
            case LIANG_ZHU1, LIANG_ZHU2, FAN_ZHU, ZI_FAN, ZI_BAO -> true;
            default -> false;
        };
        return result;
    }
}